Context Sensitive Labels for a Hardware Input Device

ABSTRACT

A method and apparatus for hardware input devices provides context sensitive labels which can change according to an application running on a computer and/or the function assigned to an input element. An illustrative implementation of the method and apparatus includes employing ink having two or more electroluminescent pattern layers with an input device. Based on the context of a computer associated with the input device, an illuminated pattern identifies the current functionality of one or more of the inputs of the input device.

CROSS REFERENCE TO RELATED APPLICATION

This application is a continuation of prior U.S. application Ser. No.10/630,937, filed Jul. 31, 2003, the entire contents of which isincorporated herein by reference.

FIELD OF THE INVENTION

The present invention generally relates to a computer input device inwhich the functions of the input device change based on a particularstate or active application. More particularly, the invention relates toa hardware input device for a computer having context sensitive labelsthat identify a function associated with the device that can changebased on, for example, the application running on the computer.

BACKGROUND

In today's computer systems, multiple applications with varyingfunctionality are available to a user. Some of the functionality andfunctions found in one application are not found in every otherapplication. In the early days of the personal computer, control andfunction keys were added to the standard QWERTY keyboard to provideadditional functionality. The function keys, typically arranged in aline across the top of the keyboard, could be assigned specific commandsby the current application or the operating system. Control keysprovided cursor and screen control. The control keys allowed the user tomake large jumps in most applications. Common control keys include:Home, End, Insert, Delete, Page Up, Page Down, Control (Ctrl), Alternate(Alt), and Escape (Esc).

As more and more functionality and applications have come on line,further keys have been added to keyboards. Some keyboards adapted tooperate with the Microsoft Windows® operating system include some extracontrol keys: two Windows® or Start Keys and an Application Key. As morekeys have been added to a keyboard, it has become increasingly difficultfor a user to remember the specific functionality assigned to each keyor combination of keys, much less find the keys providing a particularfunctionality. This can be particularly confusing when the functionalityof a key changes from one application to another.

The functionality of a key and a key combination has been placed on thekeys themselves in the form of text labels or graphic symbols. In someapplications, such as Microsoft Word®, functionality associated withcertain key combinations is not identified on the keys themselves. Withthose key combinations, to determine their functionality a user canpress the key combination or through the Tools menu access a customizetool, followed by selecting keyboard. By navigating through a list offunctions, a user can see which function is assigned to what key or keycombination. Also, a user may assign a shortcut for a function to a keyor key combination, so-called “hot keys”, resulting in auser-customizable keyboard. The user may set the function assigned to ahot key such that subsequent pressing of the hot key causes the desiredfunction to be performed. Not surprisingly, many users do not takeadvantage of conventional hot keys because it is inconvenient to assignthe functions to the keys, or because they may not even appreciate thatsuch a capability exists. Even when hot keys are programmed, the usermay have difficulty in recalling which function is assigned to each hotkey. This is especially true when there are multiple hot keys on akeyboard.

Another prior art solution involves providing flip chart above keys aslabels to identify the functions assigned to keys or key combinationsfor different applications.

Generally speaking, a keyboard has a limited number of keys forreceiving user input commands. To account for the limited number ofkeys, certain keystroke commands can perform different functions fromone application to another. However, it can be difficult for the user toremember which keys have what functionality at any given time andrequiring a user to search through menus in the application to determinethe functionality of various key and key combinations can be cumbersome.Consequently, there is a need to make it simpler for a user tounderstand the functionality for key input commands in a respectiveapplication.

Another consideration in improving a user's understanding of various keyinput commands is to do so without a substantial increase in cost of thekeyboard. With input devices such as a keyboard, there is a need toprovide an input device that is flexible, inexpensive and can beutilized with relative ease with applications supported by a computer.

SUMMARY

Aspects of the present invention relate to methods for morphing hardwareinput devices based on the active context and such changeable hardwareinput devices. An illustrative morphing method involves automaticallychanging text labels on an input device, such as the keys on a keyboard,depending on a current context, such as the active application.

Aspects of the invention relieve users of having to memorize shortcutsor navigate through menus to find the key inputs that define a desiredcommand. In certain aspects of the invention, a mechanically and/oroptically reconfigurable keyboard is provided. Other aspects allow acontext-based label associated with a key to be displayed while otherlabels associated with other contexts of the key can be hidden. Thecontext-based label can represent the functionality of the key in thecurrent context. In certain aspects of the invention, a user can beprovided with a more tangible interface that presents only relevantactions. According to aspects of the invention, only informationrelevant to operation of the key, keys or keyboard is presented to theuser. By presenting more custom and specific information, the keyboardlayout can communicate the functionality available in an application andreduce the learning curve for users.

In one aspect of the invention, a method is provided for labeling a keyon a hardware input device, wherein a plurality of pattern layers areassociated with a key, the pattern layers being disposed on top of eachkey. The method may be a computer-implemented process. In one furtheraspect, the steps of the method include receiving a first control signalfrom a computer in a first context, displaying at least a portion of thefirst pattern layer responsive to the first control signal in the firstcontext, receiving a second control signal from the computer in a secondcontext, and displaying at least a portion of the second pattern layerresponsive to the second control signal in the second context. In stillfurther aspects the label can represent an icon, a character, text, orthe like. In other aspects, the current context may correspond to anapplication in focus on the computer or an active language.

In another further aspect the step of displaying at least the portion ofthe first pattern layer can include illuminating at least the portion ofthe first pattern layer, and the step of displaying at least the portionof the second pattern layer can include illuminating at least theportion of the second pattern layer. In yet other aspects the patternlayers may be part of a key or adjacent to an associated key. Thepattern layers may be electroluminescent.

In another aspect of the invention, a method for labeling a key on akeyboard is provided that includes the steps of receiving a controlsignal from a computer representing a current context, and moving atemplate automatically in the keyboard so that the label correspondingto the current context is displayed in a region adjacent to the key. Infurther aspects of the method, the template may be drum-shaped,octagonal or any other shape that would fit within the contour of akeyboard.

According to another aspect of the invention, a hardware input devicefor a computer is provided including a plurality of input keys, at leastone key being associated with a plurality of labels, each labelrepresenting a context associated with the key, wherein a labeldisplayed is configured to change in response to a control signalrepresenting a current context generated by the computer. In certainaspects the labels can represent characters in different languages. Infurther aspects, the input device can include a plurality of stackedlayers configured to display the label representing the context of thekey responsive to the control signal. In certain aspects the stackedlayers may be electroluminescent pattern layers, liquid crystal displaylayers, or organic light emitting diode (OLED) layers. In yet furtheraspects the stacked pattern layers can be in a region adjacent to thekey or part of the key. In an aspect incorporating electroluminescentlayers as part of the key, these layers may be located at the top of thekey or at the bottom of the key in the key substrate. If the layers arelocated at the bottom portion, in a yet a further aspect, the key mayfurther include a transparent top portion and optical componentsdisposed between the transparent top portion and the stackedelectroluminescent pattern layers. The optical components project adisplay of the label representing the context of the key from theelectroluminescent pattern layers through the transparent top portion.

In a further aspect, instead of pattern layers, a layer of electronicink could be used where responsive to a control signal, the layer ofelectronic ink is configured to change and display a label representingthe context of a key on a keyboard.

In another aspect of the present invention, a keyboard is providedincluding a configurable substrate, wherein responsive to a controlsignal representing a current context, the substrate changes topographyto generate a user interface. In a further aspect, the keyboard includeslabels representing various contexts associated with the user interface,wherein at least one label is configured to be displayed responsive tothe control signal representing the current context of the userinterface.

In yet another aspect of the present invention, the keyboard includes aplurality of keys, each key associated with a region for displaying acurrent context for the key, a driver for receiving a control signalfrom a computer and generating a signal for associating the currentcontext with each key, and a movable template configured to display thecurrent context of each key in the region associated with each keyresponsive to a signal received from the driver.

These and other novel advantages, details, embodiments, features andaspects of the present invention will be apparent to those skilled inthe art from following the detailed description of the invention, theattached claims and accompanying drawings, listed herein, which areuseful in explaining the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing summary, as well as the following detailed description ofillustrative embodiments, is better understood when read in conjunctionwith the accompanying drawings, which are included by way of example,and not by way of limitation with regard to the claimed invention.

FIG. 1 shows a schematic diagram of a general-purpose digital computingenvironment that can be used to implement various aspects of theinvention.

FIG. 2 shows a side view of a key according to an illustrativeimplementation of the present invention.

FIG. 3 shows a key on a keyboard substrate according to an illustrativeembodiment of the present invention.

FIG. 4 shows a portion of a keyboard according to an illustrativeimplementation of the present invention.

FIG. 5 shows a configuration of assigning various command sets to aplurality of keys according to an exemplary implementation of thepresent invention.

FIG. 6 shows a keyboard according to another exemplary implementation ofthe present invention.

FIG. 7 shows a flowchart illustrating the steps to label the keys basedon a current context according to an exemplary implementation of thepresent invention.

DETAILED DESCRIPTION

As described above, aspects of the present invention relate to a methodand apparatus that allows a user to easily identify functionalityassigned to keys/buttons on an input device. The method is particularlyapplicable to keyboard input devices, but may be applied to otherhardware input devices as appropriate. The keyboard can be a separateunit for interfacing with a host computer or integrated with a computersystem, such as integrated with a personal computer or handheld computersystem.

FIG. 1 illustrates an example of a suitable computing system environment100 on which the invention may be implemented. The computing systemenvironment 100 is only one example of a suitable computing environmentand is not intended to suggest any limitation as to the scope of use orfunctionality of the invention. Neither should the computing environment100 be interpreted as having any dependency or requirement relating toany one or combination of components illustrated in the exemplaryoperating environment 100.

The invention is operational with numerous other general purpose orspecial purpose computing system environments or configurations.Examples of well known computing systems, environments, and/orconfigurations that may be suitable for use with the invention include,but are not limited to, personal computers, server computers, hand-heldor laptop devices, multiprocessor systems, microprocessor-based systems,set top boxes, programmable consumer electronics, network PCs,minicomputers, mainframe computers, distributed computing environmentsthat include any of the above systems or devices, and the like.

The invention may be described in the general context ofcomputer-executable instructions, such as program modules, beingexecuted by a computer. Generally, program modules include routines,programs, objects, components, data structures, etc. that performparticular tasks or implement particular abstract data types. Theinvention may also be practiced in distributed computing environmentswhere tasks are performed by remote processing devices that are linkedthrough a communications network. In a distributed computingenvironment, program modules may be located in both local and remotecomputer storage media including memory storage devices.

With reference to FIG. 1, an exemplary system for implementing theinvention includes a general-purpose computing device in the form of acomputer 110. Components of computer 110 may include, but are notlimited to, a processing unit 120, a system memory 130, and a system bus121 that couples various system components including the system memoryto the processing unit 120. The system bus 121 may be any of severaltypes of bus structures including a memory bus or memory controller, aperipheral bus, and a local bus using any of a variety of busarchitectures. By way of example, and not limitation, such architecturesinclude Industry Standard Architecture (ISA) bus, Micro ChannelArchitecture (MCA) bus, Enhanced ISA (EISA) bus, Video ElectronicsStandards Association (VESA) local bus, and Peripheral ComponentInterconnect (PCI) bus also known as Mezzanine bus.

Computer 110 typically includes a variety of computer readable media.Computer readable media can be any available media that can be accessedby computer 110 and includes both volatile and nonvolatile media,removable and non-removable media. By way of example, and notlimitation, computer readable media may comprise computer storage mediaand communication media. Computer storage media includes volatile andnonvolatile, removable and non-removable media implemented in any methodor technology for storage of information such as computer readableinstructions, data structures, program modules or other data. Computerstorage media includes, but is not limited to, RAM, ROM, EEPROM, flashmemory or other memory technology, CD-ROM, digital versatile disks (DVD)or other optical disk storage, magnetic cassettes, magnetic tape,magnetic disk storage or other magnetic storage devices, or any othermedium which can be used to store the desired information and which canaccessed by computer 110. Communication media typically embodiescomputer readable instructions, data structures, program modules orother data in a modulated data signal such as a carrier wave or othertransport mechanism and includes any information delivery media. Theterm “modulated data signal” means a signal that has one or more of itscharacteristics set or changed in such a manner as to encode informationin the signal. By way of example, and not limitation, communicationmedia includes wired media such as a wired network or direct-wiredconnection, and wireless media such as acoustic, RF, infrared and otherwireless media. Combinations of the any of the above should also beincluded within the scope of computer readable media.

The system memory 130 includes computer storage media in the form ofvolatile and/or nonvolatile memory such as read only memory (ROM) 131and random access memory (RAM) 132. A basic input/output system 133(BIOS), containing the basic routines that help to transfer informationbetween elements within computer 110, such as during start-up, istypically stored in ROM 131. RAM 132 typically contains data and/orprogram modules that are immediately accessible to and/or presentlybeing operated on by processing unit 120. By way of example, and notlimitation, FIG. 1 illustrates operating system 134, applicationprograms 135, other program modules 136, and program data 137.

The computer 110 may also include other removable/non-removable,volatile/nonvolatile computer storage media. By way of example only,FIG. 1 illustrates a hard disk drive 140 that reads from or writes tonon-removable, nonvolatile magnetic media, a magnetic disk drive 151that reads from or writes to a removable, nonvolatile magnetic disk 152,and an optical disk drive 155 that reads from or writes to a removable,nonvolatile optical disk 156 such as a CD ROM or other optical media.Other removable/non-removable, volatile/nonvolatile computer storagemedia that can be used in the exemplary operating environment include,but are not limited to, magnetic tape cassettes, flash memory cards,digital versatile disks, digital video tape, solid state RAM, solidstate ROM, and the like. The hard disk drive 141 is typically connectedto the system bus 121 through a non-removable memory interface such asinterface 140, and magnetic disk drive 151 and optical disk drive 155are typically connected to the system bus 121 by a removable memoryinterface, such as interface 150.

The drives and their associated computer storage media discussed aboveand illustrated in FIG. 1, provide storage of computer readableinstructions, data structures, program modules and other data for thecomputer 110. In FIG. 1, for example, hard disk drive 141 is illustratedas storing operating system 144, application programs 145, other programmodules 146, and program data 147. Note that these components can eitherbe the same as or different from operating system 134, applicationprograms 135, other program modules 136, and program data 137. Operatingsystem 144, application programs 145, other program modules 146, andprogram data 147 are given different numbers here to illustrate that, ata minimum, they are different copies. A user may enter commands andinformation into the computer 20 through input devices such as akeyboard 162 and pointing device 161, commonly referred to as a mouse,trackball or touch pad. Other input devices (not shown) may include amicrophone, joystick, game pad, satellite dish, scanner, or the like.These and other input devices are often connected to the processing unit120 through a user input interface 160 that is coupled to the systembus, but may be connected by other interface and bus structures, such asa parallel port, game port or a universal serial bus (USB). A monitor191 or other type of display device is also connected to the system bus121 via an interface, such as a video interface 190. In addition to themonitor, computers may also include other peripheral output devices suchas speakers 197 and printer 196, which may be connected through anoutput peripheral interface 190.

The computer 110 may operate in a networked environment using logicalconnections to one or more remote computers, such as a remote computer180. The remote computer 180 may be a personal computer, a server, arouter, a network PC, a peer device or other common network node, andtypically includes many or all of the elements described above relativeto the computer 110, although only a memory storage device 181 has beenillustrated in FIG. 1. The logical connections depicted in FIG. 1include a local area network (LAN) 171 and a wide area network (WAN)173, but may also include other networks. Such networking environmentsare commonplace in offices, enterprise-wide computer networks, intranetsand the Internet.

When used in a LAN networking environment, the computer 110 is connectedto the LAN 171 through a network interface or adapter 170. When used ina WAN networking environment, the computer 110 typically includes amodem 172 or other means for establishing communications over the WAN173, such as the Internet. The modem 172, which may be internal orexternal, may be connected to the system bus 121 via the user inputinterface 160, or other appropriate mechanism. In a networkedenvironment, program modules depicted relative to the computer 110, orportions thereof, may be stored in the remote memory storage device. Byway of example, and not limitation, FIG. 1 illustrates remoteapplication programs 185 as residing on memory device 181. It will beappreciated that the network connections shown are exemplary and othermeans of establishing a communications link between the computers may beused.

An input device such as a keyboard 162 allows a user to provide input toa computer 110. It would be helpful if a keyboard were more flexible tosimplify the user experience. This is particularly true where a user hasto memorize shortcuts or navigate through a series of menus to find thedesired command. In certain embodiments of the invention, a keyboard canbe mechanically and/or optically reconfigured. According to certainimplementations of the invention, keys can be labeled according to thecontext of the computer to represent their functionality.

One possible method for providing keys with the ability to communicatetheir functionality would involve providing a pixel addressable displayon top of each key. Hence, a potentially infinite number of key labelscould be configured for each key. While such a concept is within thescope of the invention, providing a pixel addressable display for eachkey is not, as of yet, cost-effective. Other less expensive alternativescan be implemented.

In one illustrative embodiment, the present invention incorporateselectroluminescent ink. Electroluminescent ink has been employed inother applications such as indiglo for watches and to providebacklighting for devices such as mobile phones. According to anexemplary implementation of the invention, electroluminescent ink can belayered with different patterns, such as text labels, provided one ontop of another where the pattern on the bottom layer shines through thepattern on the top layer. With this concept, text labels on keys, suchas variable function keys, can be changed automatically according to theapplication running and the function assigned to the key. Also, thelabels can occupy the same space on the top of the key. In anotherembodiment, the labels can be placed in a region adjacent to the keyrather than on top of the key.

In more detail, according to an exemplary embodiment of the invention,two or more electroluminescent ink pattern layers are stacked on top ofeach other in or adjacent to a key. By layering, different ink patternscan be placed one on top of another, where the bottom pattern layer canshine through the top pattern layer for viewing. Each pattern layer isvery thin and, responsive to a high voltage, energizes phosphor atomsthat produce light. Each pattern layer could be a laminated assemblyincluding a thin glass or plastic substrate such as Mylar® developed byE.I. du Pont de Nemours and Company of Wilmington, Del., which is coatedwith a clear conductor, which in turn is coated with a thin layer ofphosphor. The phosphor can be coated with a thin plastic and thenanother electrode can be provided. Essentially a capacitor can becreated with phosphor between two conductors. When a voltage, such as100 to 200 volts AC, is applied to the capacitor, the phosphor energizesand begins emitting photons in the visible spectrum. The photons providean illuminated pattern corresponding to the layout of the phosphorregion and are readily visible to the naked eye.

With reference to FIG. 2, a discussion of a configuration of a keyaccording to an exemplary embodiment is described below. FIG. 2 shows aside view of an illustrative key 200 with two stacked pattern layers. Itwill be apparent to those skilled in the art that additional patternlayers could be provided. For ease of description, however, animplementation with two pattern layers will be described with referenceto FIG. 2. The key 200 includes a clear key cap 210, and first andsecond pattern layers. The key cap 210 can be made of a clear substance,such as a clear black plastic like Mylar® developed by E.I. du Pont deNemours and Company of Wilmington, Del., that allows light to passthrough. The pattern layer structure includes a top Mylar® layer 201, afirst electroluminescent (EL) ink print layer 203, a first Mylar®substrate 204, a second EL ink print layer 205, and a second Mylar®substrate 207. At the bottom of the substrate 207 there may be a backingthat can reflect any backscatter through the transparent substratestoward the top of the key. Electrical connections 215 a and 215 b areprovided between the EL (electroluminescent) driver 220 and the Mylar®substrates 204 and 207, respectively. The EL driver 220 provides asignal to the pattern layers via the electrical connections 215 a and215 b to excite the appropriate electroluminescent layer 204 or 207.

The EL driver 220 receives a control signal from a computer according toa current context operative at the computer. The control signalidentifies the appropriate label or labels that correspond to thecurrent context of the computer. In one implementation, a group oflabels correspond to a command set associated with a particularapplication, such as a word processing or mail application. Responsiveto receiving the control signal from the computer, the EL driver 220generates a signal that causes the proper contextual labels to beactive. That is, a current is transmitted to the pattern layer with thecorresponding label causing the phosphors to energize and display thepattern represented by the phosphors. It will be appreciated that the ELdriver 220 may actually include a series of drivers. In addition, the ELdriver can continually transmit a signal to the desired pattern layer toactivate the desired label for as long as necessary, for example as longas the current context remains the same. Each pattern layer 203 and 205acts as a separate circuit, which illuminates when active, namely whenEL driver 220 provides a current to the respective substrate 204 or 207associated with the pattern layer.

It should be understood that the voltage required to drive theelectroluminescent pattern layer in order to receive an acceptableoutput may need to be increased for pattern layers farther away from thekey cap 210 so that an appropriate light output (intensity) can begenerated such that the user can see the label associated with thecurrent functionality of the key.

Labels can be constructed by the patterns of the phosphors in the EL inkprint layers 203 and 205. For example, the label can be patterned orprinted to take the form of text or an icon or any other graphicalrepresentation. It is well within the knowledge of the skilled artisanto design the appropriate pattern.

From a practical standpoint, a limited number of pattern layers can bestacked on top of each other due to several factors including availablespace and the voltage requirements necessary to generate the appropriateintensity of light to penetrate through layers above the lower layer forvisible recognition of a label by a user. Thus, a lower pattern layerwould require a higher current to provide the user of the key with thesame apparent intensity of light as the layer nearest to the top, e.g.,nearest to the key cap 210.

Ideally, the pattern layers would light at the top of each key asdescribed with reference to FIG. 2. While techniques exist for placingthe display at the top of each key such as making part of the keyconductive to transmit the power and signal, such techniques may bedifficult and costly. An alternative embodiment involves placing thedisplay at the bottom of the key's substrate and then using optics andto diffuse through clear top keys. In this embodiment, thephosphorescent display from an illuminated pattern layer can beprojected to the top of the key cap. An illustrative structure forimplementing this embodiment including the key 310 and keyboardsubstrate 320 is depicted in FIG. 3. As shown in FIG. 3, the key 310 iscoupled to the substrate 320. From top to bottom, the key includesdiffuser 330, key cap 340, optics (e.g., mirrors and the like) 350 andthe display 360.

In another illustrative implementation of the invention depicted in FIG.4, the pattern layers could be placed in a region adjacent to the key.FIG. 4 shows a keyboard 400 including the conventional keyboard keys andfunction keys. On the top portion of the keyboard, four buttons areshown 405, 410, 415 and 420. Below each of the buttons 405, 410, 415,420 is an electroluminescent strip (label region) 425, 430, 435, 440.The label regions respectively display the pattern layer associated withthe current context of the corresponding key.

In another illustrative implementation of the present invention, eachlayer could have two separate electroluminescent patterns representinglabels, which could be controlled independently. Thus, if two patternlayers are stacked one on the other, then four separate contexts couldbe represented by the available patterns. Stated differently, fourseparate command sets could be represented. FIG. 5 shows an illustrativeimplementation of two layers, each with two patterns.

Referring to FIG. 5, elements 505, 510, 515 and 520 represent keys.Layer 1 525 includes two separate command sets 1A and 1B. Command set 1Aprovides the context for the keys 505, 510, 515 and 520 in a wordprocessing application. As shown, keys 505, 510, 515 and 520 have thefunctions of Cut, Copy, Paste and Undo, respectively for the wordprocessing application context. Command set 1B provides the context in amail or messaging application. As shown, keys 505, 510, 515 and 520 havethe functions Reply, Forward, Send and Spell, respectively for the mailapplication context. In this embodiment, when either the word processingor mail application is active then the EL Driver illuminates thecorresponding command set 1A or 1B in layer 1 525.

Layer 2 530 includes two separate command sets 2A and 2B. Command set 2Aprovides the context for the keys 505, 510, 515 and 520 in a mediaapplication. As shown, keys 505, 510, 515 and 520 have the functions ofPlay, Prev, Next and Stop, respectively for the media applicationcontext. Command set 2B provides the context in an Internet browserapplication. As shown, keys 505, 510, 515 and 520 have the functionsBack, Forward, Search and Favorites, respectively for the browserapplication context. In this embodiment, when either the media orbrowser application is active then the EL driver illuminates thecorresponding command set 2A or 2B in layer 2 530. Also, in place of oneof the command sets 1A, 1B, 2A and 2B, the keys could have a defaultcommand set which is used in other applications.

It should be understood that even though the embodiment of FIG. 5 isdiscussed with respect to one label appearing for each key at a time,that multiple labels could be shown. For example, different portions ofthe label could correspond to different key strokes, such as the keyonly, key+shift, key+control, key+alt. Further, as appropriate thelabels in this implementation need not all be part of the same layer aslong as they are not overlapping such that one label would blockanother. In an exemplary implementation, patterns could be formed bycombinations of labels from different layers as along as the portions dono not overlap. For example, a top layer label could be a dash, a lowerlayer could be a circle and the combination could be a circle with adash through the middle.

The aforementioned implementations provide a mechanism to identify a setof functional labels, one of which can automatically be highlighted fora key in a current context.

Other illustrative implementations of the invention include stackingpreprinted liquid crystal displays (LCDs) on top of each other adjacentto a key or within the key. Electroluminescent backlighting can be used.An LCD driver in place of an EL driver would receive a control signalfrom a computer representing a current context associated with thecomputer. In turn, the LCD driver would activate the LCD correspondingto the current context. One skilled in the art of liquid crystaldisplays would be able to easily construct a stacked liquid crystaldisplay to carry out the invention. To provide proper lighting for asecond layer, one skilled in the art would appreciate that it may benecessary to provide good ambient light, in the case of a reflective LCDor a bright light source underneath the layers.

In still another illustrative implementation, stacked layers of organiclight emitting diodes (OLEDs) could be used. Unlike traditional LCDs,OLEDs are self-luminous and do not require backlighting, diffusers, orpolarizers that go with LCDs. An OLED includes two charged electrodessandwiched on top of some organic light emitting material. Their lowpower consumption provides for increased efficiency and helps minimizeheat and electric interference. The basic OLED cell structure includes astack of thin organic layers sandwiched between a transparent anode anda metallic cathode. The organic layers comprise a hole-injection layer,a hole-transport layer, an emissive layer, and an electron-transportlayer. When an appropriate voltage is applied to the cell, the injectedpositive and negative charges recombine in the emissive layer to producelight (electro luminescence). The structure of the organic layers andthe choice of anode and cathode are designed to maximize therecombination process in the emissive layer, thus maximizing the lightoutput from the OLED device. To implement an OLED in the invention, anOLED driver in place of an EL driver would receive a control signal froma computer representing a current context associated with the computer.In turn, the OLED driver would activate the OLED corresponding to thecurrent context. One skilled in the art of OLEDs would be able to easilyconstruct a stacked OLED display to carry out the invention.

In still a further implementation, rather than pattern layers, a layerof electronic ink may be used such that the electronic ink would changein response to a control signal to display a label representing thecurrent context of a key on a keyboard. The principal components ofelectronic ink are millions of tiny microcapsules, about the diameter ofa human hair. In one incarnation, each microcapsule contains positivelycharged white particles and negatively charged black particles suspendedin a clear fluid. When a negative electric field is applied, the whiteparticles move to the top of the microcapsule where they become visibleto the user. This makes the surface appear white at that spot. At thesame time, an opposite electric field pulls the black particles to thebottom of the microcapsules where they are hidden. By reversing thisprocess, the black particles appear at the top of the capsule, which nowmakes the surface appear dark at that spot. To form an electronic inkdisplay, the ink can be printed onto a sheet of plastic film that islaminated to a layer of circuitry. The circuitry forms a pattern ofpixels that can then be controlled by a display driver. To implementelectronic ink in the invention, an electronic ink display driver inplace of an EL driver would receive a control signal from a computerrepresenting a current context associated with the computer. In turn,the electronic ink display driver would cause the appropriate pixels onthe electronic ink display to be black and white to provide anelectronic ink pattern corresponding to the current context.

In yet another implementation of labeling a key on a keyboard, the keyseach have a window area adjacent to the key where a physical label canbe displayed. For example, in place of EL strips 405, 410, 415 and 420in FIG. 4, respective window areas can be provided. Responsive to acontrol signal representing a current context from a computer orprocessor, a mechanical motorized roller moves a sliding template withinthe window area so that the appropriate label identifying the keyfunctionality in the current context shows in the window. A physicaltemplate can be used to represent a command set for keys positioned in arow or a column. In another embodiment, the physical template may be adrum, similar to a slot machine such that the labels for a key'sfunctionality in different contexts are printed on the drum. Responsiveto a control signal from the computer or processor, the drum rotates todisplay the appropriate label for the current context in the window.Alternatively, the template may be octagonal or any other shape thatwould fit within the contour of a keyboard

In another illustrative embodiment, rather than only a few keys havingtheir labels change dependent on the current context, the entirekeyboard can be morphable based on the current context. For example, thekey labels could change based on the active language. Thus, the keys ona keyboard could change to represent Japanese characters responsive to acontrol signal indicating that the active language is Japanese, or couldinclude characters with accents and the like for certain Latin-basedlanguages. In such an implementation, when an active application or theoperating system is in a particular language, the keyboard canautomatically be configured to provide labels representing thecharacters in that application. Such a keyboard could be veryadvantageous in that there would be no need to manufacture differentkeyboards for different countries. Instead, a universal keyboard couldbe made according to the invention which can be automatically configuredto provide the language desired. Also, a user could manually configurethe keyboard for a particular language through the set up in thecomputer so that multi-lingual users would be presented with labels forcharacters/functions in the active language. In an alternateimplementation, a button could be provided on the keyboard, which couldbe manipulated to provide the desired language. Through theabove-described methods the language context could be combined with thefunctionality context so that the labels could be adapted to display theappropriate language and functionality for a key.

In another embodiment of the invention, the context sensitive aspects ofthe invention can be taken to another level such that the mechanics ofthe keys are themselves configurable. According to this implementation,a flat keyboard is presented to the user. In response to a controlsignal from a computer representing the current context, the keyboardsubstrate could physically grow out of the flat keyboard in dimple formto represent a key. Hence, the topography of the keyboard substratechanges. The dimples reside on top of a display that provides thefunctionality of the dimple/key. This aspect of the invention provides areconfigurable keyboard, where if there are only three choices availablefor a user to take in the current context, such as Yes, No or Cancelthen only those keys/dimples appear to the user. Referring to FIG. 6,the keyboard 600 includes a keyboard substrate 605 and three raisedportions 610, 620 and 630, which encompass the only functionalitypresently available in the active application. Depression of any of theraised portions would cause the functionality represented by the portionto occur. The benefit of this embodiment is apparent in that only thekeys that are relevant to the current context will appear. Hence, in aword processing application, the QWERTY key layout will be presented tothe user, whereas in a drawing application with no text entry the QWERTYlayout will not be provided. Instead, more specific application buttonsappear like line, circle, etc.

To implement an illustrative embodiment, one skilled in the art couldbuild the morphing mechanical device applying the teachings andprinciples of the electronic Braille technology employed by Virtouch,Ltd. of Jerusalem, Israel described in U.S. Pat. No. 5,912,660 entitled“Mouse-like Input/Output Device with Display Screen and Method For itsUse” and U.S. Pat. No. 6,278,441 entitled “Tactile Interface System ForElectronic Data Display System.” In particular, pins can be provided inthe keyboard substrate and responsive to a control signal representingthe current context can be raised and lowered to identify theappropriate keys/dimples available to receive an input in the currentcontext. The areas raised by the pins would have underlying keys suchthat the functionality associated with the raised areas would occurresponsive to depression of the raised area. The pins can be combinedwith the labeling technology described above to provide a visualidentification of the functionality of the raised dimples/keys.

In one implementation of the present invention, software to trigger thelabeling of the hardware input device resides on the computer. Forexample, an application or hook running in the operating system monitorsthe application in focus and sends control signals to the hardware inputdevice control element, e.g., EL driver for the embodiment describedwith respect to FIG. 2, representative of the current context. It shouldbe understood that many methods of implementing the present inventionincluding the above-described methods could be implemented usingcomputer-executable instructions, which can be stored on a computerreadable medium.

FIG. 7 shows a flowchart illustrating the steps to label the keys basedon a current context according to an exemplary implementation of thepresent invention, which can operate in conjunction with the inputdevice described in FIG. 4. In step 710, the software monitors theapplication currently in focus. Based on the application in focus, thesoftware generates a control signal representing a command set for thecurrent context in step 720. In one embodiment, the control signal is anoperating system message as to what application is running. Then, instep 730, the software causes the control signal to be transmitted fromthe computer/processor to the hardware input device (e.g., keyboard).The hardware input device may be external to the computer or integratedwith the computer. Next in step 740, the hardware driver (e.g., ELdriver) receives the control signal from the computer and transmits anactivation signal to the appropriate pattern layer for each key impactedby the change in context based on the control signal. The hardwaredriver may include a look up table or other memory to convert thecontrol signal to an appropriate activation signal. Responsive to thecontrol signal, in step 750 the EL pattern layer for each key emitslight in the form of a pattern representing a viewable label associatedwith the current context of the respective key for the application infocus. Also, in step 750, signals previously generated responsive to aprevious context, including a default context causing other labels to bedisplayed, are discontinued in response to the control signal. Asdiscussed previously, the context is not limited to what application isin focus, but can include other contextual situations like language ofoperating system/application.

Various examples of the present invention have been described above, andit will be understood by those of ordinary skill that the presentinvention includes within its scope all combinations and subcombinationsof these examples. Additionally, those skilled in the art will recognizethat the above examples simply exemplify the invention. Various changesand modifications may be made without departing from the spirit andscope of the invention, as defined in the appended claims.

1. A method for labeling a key on a hardware input device, wherein aplurality of pattern layers are associated with a key, one of first andsecond pattern layers being disposed on top of the other of the firstand second pattern layers, and the first pattern layer including firstand second portions, said method comprising the steps of: receiving afirst control signal from a computer in a first context; displaying atleast the first portion of the first pattern layer responsive to thefirst control signal in the first context; receiving a second controlsignal from the computer in a second context; and displaying at least aportion of the second pattern layer responsive to the second controlsignal in the second context.
 2. The method according to claim 2,further including the steps of: receiving a third control signal fromthe computer in a third context; and displaying the second portion ofthe first pattern layer responsive to the third control signal in thethird context.
 3. The method according to claim 2, further includingresponsive to the third control signal, discontinuing the display of anyportions of the first and second pattern layers displayed.
 4. The methodaccording to claim 1, wherein the first and second portions are mutuallyexclusive.
 5. The method according to claim 1, wherein the first controlsignal represents an application that is in focus.
 6. The methodaccording to claim 1, wherein the first portion of the first patternlayer includes text representing a function associated with the key inan active application in the first context.
 7. The method according toclaim 6, further comprising: receiving a third control signal from thecomputer in a third context; displaying the second portion of the firstpattern layer responsive to the second control signal in the thirdcontext.
 8. The method according to claim 7, wherein the second portionof the first pattern layer includes text representing a functionassociated with the key in an active application in a third context. 9.The method according to claim 7, further comprising the step ofdiscontinuing the display of the first portion of the first patternlayer responsive to the second control signal in the third context. 10.The method according to claim 1, wherein the first portion of the firstpattern layer includes an icon representing a function associated withthe key in an active application in the first context.
 11. The methodaccording to claim 1, wherein the first and second pattern layers arepart of the key.
 10. The method according to claim 1, wherein the firstand second pattern layers are in a region adjacent to the key.
 12. Themethod according to claim 1, further comprising the step ofdiscontinuing the display of the first portion of the first patternlayer responsive to the second control signal in the second context. 13.A method for labeling a key on a hardware input device, wherein aplurality of pattern layers are associated with a key, one of first andsecond pattern layers being disposed on top of the other of the firstand second pattern layers, said method comprising the steps of:receiving a first control signal from a computer in a first context;displaying at least a portion of the first pattern layer responsive tothe first control signal in the first context; receiving a secondcontrol signal from the computer in a second context; and displaying atleast a portion of the second pattern layer responsive to the secondcontrol signal in the second context, wherein the first and secondpattern layers are electroluminescent.
 14. A computer readable mediumhaving computer-executable instructions for performing the steps of:determining a current context of a computer; generating a control signalrepresenting the current context; and transmitting the control signal toa keyboard, the control signal causing one of a plurality of stackedlayers associated with a key of the keyboard to be illuminated, whereinthe illuminated layer displays the current context of the key.
 15. Thecomputer-readable medium of claim 14, wherein the current contextrepresents a language.
 16. The computer readable medium according toclaim 14, wherein the current context represents an application infocus.